#ifndef __MEDIA_API__
#define __MEDIA_API__
#include <iostream>
#include "Util/util.h"
#include "Network/Buffer.h"
#include "jsoncpp/json.h"
#include "frame_common.h"
using namespace FrameCommon;
namespace Media{
	class IMediaInterface{
	public:
    	static std::shared_ptr<IMediaInterface> GetInstance();
    	
    	virtual bool Start() = 0;
    	virtual bool Stop() = 0;

    	/*
        功能描述: 获取媒体通道信息
    	返回值：返回媒体通道信息对象智能指针
    	*/
    	virtual MediaChannel::Ptr GetMediaChannel(int video, int audio) = 0;

        /*
    	功能描述：设置拉流创建器
    	返回值：成功/true, 失败/false
        */
    	virtual bool SetStreamPlayCreater(StreamPlayCreater::Ptr creater) = 0;

		/*
    	功能描述：停止读取U盘中的文件
    	返回值：成功/true, 失败/false
        */
    	virtual bool StopReadUsbCard() = 0;

		//显示SD卡或U盘格式不支持的弹框
		virtual void DisplayWarnSD() = 0;
		//关闭SD卡或U盘格式不支持的弹框
		virtual void CloseDisplayWarnSD() = 0;
	};

}


#endif
